/*
	验证规则中间件
*/
const { validationResult } = require('express-validator');


// parallel processing 并行处理，除此之外还有顺序处理
module.exports = validations => {
  return async (req, res, next) => {
    await Promise.all(validations.map(validation => validation.run(req)));

    const errors = validationResult(req);
    if (errors.isEmpty()) {
      return next();
    }
    res.status(400).json({ errors: errors.array() });
  };
};
